The present application is related to patent application Ser. No. 09/110,547 filed Jul. 6, 1998, now U.S. Pat. No. 6,219,802, patent application Ser. No. 09/143,957, filed Aug. 31, 1998, now abandoned, and patent application Ser. No. 09/143,958, filed Aug. 31, 1998, now U.S. Pat. No. 6,321,347, assigned to the same assignee as the present application and having the same inventors as the present application.
The present invention relates generally to the field of networks and more particularly to a system and method for disassembling test data.
Computer systems running complex interrelated software modules require testing as new revisions of the software modules are introduced and as problems or xe2x80x9cbugsxe2x80x9d are discovered in existing software modules. An example of such a computer system is shown in FIG. 1. This example shows a small part of a telephone network 20. In this figure, a public telephone 22 is connected to a central officexe2x80x94service switching point (CO/SSP) 24. The CO/SSP 24, as part of its call processing, sends a call record over a signaling network 26 to a service control point (SCP) 28. The SCP 28 passes the call records on to a fraud detection system 30. When a new version of the fraud detection system 30 has been developed, it is necessary to test the new version of the fraud detection system 30 before adding it to the telephone network. This requires simulating the flow of call records that the new version of the fraud detection system has been designed to analyze. Ideally, this simulation data would be generated by the actual network elements in a laboratory setting. Often, this is not practical due to a number of reasons, including, limited funds, limited laboratory resources, staggered development cycles of dependent network elements, etc.
Testing commonly requires determining if an expected result has been returned by the component under test. Many network components communicate in formats that are not human readable. Comparing an expected result with a received result can be very time consuming and expensive when the results (files) are in a machine readable format. In addition, it is easy to miss errors. Finally data formats change often in the fast paced computer networks area and these changes obsolete data format specific test tools.
Thus there exists a need for a system and method for disassembling test data that is inexpensive, easy to use and can disassemble a variety of data formats.
A system for disassembling test data that overcomes these and other problems includes a data structure definition system and a machine readable file. A disassembly system determines a first field from the data structure definition system and converts a first portion of the machine readable file to a human readable format according to a definition of the first field in the data structure definition system.
The system disassembles specified test data using the data structure definition system. The versatility of the data structure definition system allows the system to disassemble any data format with minimal effort on the part of the user. As a result when data formats change, the system can be quickly adapted to disassemble the new data format. This makes the system easy and inexpensive to use.
The present invention is applicable to any industry that develops inter-related software modules, including: communication companies, business and operating software companies, networking companies, defense companies, semiconductor companies, etc. Programmers need to test how their programs will work with other programs before releasing their software. This often requires disassembling files and data into a human readable format. The present invention allows a user to review files in a format that they can easily understand. This greatly simplifies the effort required by programmers to test their programs.